The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
The ubiquity of handheld devices, particularly smartphones, allows people to make lists “on the go.” The types of lists that people create vary widely. Typical examples include grocery lists, other types of shopping lists, and to-do lists.
A list management computer program executing on a device allows a user to create one or more lists of items and to view the one or more lists. In some list management computer programs, each character selected by a user causes the list management computer program to perform a search against a database of words or phrase to find a possible match. For example, if a user types in “Alpha” and then “a”, the computer program will search a database for “Alpha a”. If the database includes items “Alpha apples” and “Alpha artichokes”, then the computer program may cause “Alpha apples” and/or “Alpha artichokes” to be displayed on the user's device to allow the user to select one of those options without the user having to enter or select each of the remaining characters in the displayed options. In other words, if the user selects the option “Alpha apples” after typing in the last “a”, then the user does not have to enter in the partial string “pples” in order for “Alpha apples” to be added to a list.
One problem with current list management software is that if no match occurs between a current string and a string in a database, then no search results are displayed to the user. For example, a user types in “Alpha” and a database of phrases only includes three Alpha products: “Alpha apples”, “Alpha artichokes” and “Alpha bananas”. Each of those phrases are displayed to the user. However, if the user next selects “s” (which renders the current string to be “Alpha s”), then the list management program, upon discovering that “Alpha s” does not match any phrase in the database, displays a message that no search results were found.